Object Lifetime Prediction in Java

نویسندگان

  • Hajime Inoue
  • Darko Stefanović
  • Stephanie Forrest
چکیده

Accurately predicting the lifetimes of objects in object-oriented and functional languages is important because such predictions can be used to improve memory management performance at run-time. A typical approach to this prediction problem is first to observe object lifetimes by tracing a sample program execution, then to construct a predictor function based on these observations, and finally to test the predictions on reference program executions. Four quantitative measures characterize this approach: coverage, the proportion of objects in the reference program execution for which the predictor function is defined; accuracy, the fraction of predicted lifetimes that are correct; precision, the granularity of the predictions; and size, the size of the predictor itself. These four properties are not independent; for example, increased precision often leads to less coverage and accuracy. We describe a fully precise prediction method and report experimental results on its performance. By “fully precise” we mean that the granularity of predictions is equal to the smallest unit of allocation. We show that for a number of benchmark programs in the Java programming language, fully precise prediction can be achieved, together with high coverage and accuracy. Our results also show that a significant proportion of objects have a measured lifetime of zero, a fact which a dynamic compiler could use to avoid explicit allocation. The method described here is the first to combine high-precision and efficiency in a single lifetime predictor.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

On Models for Object Lifetime Distributions

Analytical models of object lifetimes are appealing because they would enable mathematical analysis or fast simulation of the memory management behavior of programs. In this paper, we investigate models for object-oriented programs such as Java and Smalltalk. We present analytical models and compare them with observed lifetimes for 58 Smalltalk and Java programs. We find that observed lifetime ...

متن کامل

Symbolic Prediction of Dynamic Memory Requirements

This work presents a technique to compute symbolic nonlinear approximations of the amount of dynamic memory required to safely run a method in (Java-like) imperative programs. We do that for scoped-memory management where objects are organized in regions associated with the lifetime of methods. Our approach resorts to a symbolic non-linear optimization problem which is solved using Bernstein ba...

متن کامل

A Study of Java Object Demographics Richard

Researchers have long strived to exploit program behaviour in order to improve garbage collection efficiency. For example, by using a simple heuristic, generational GC manages short-lived objects well, although longer-lived objects will still be promoted to an older generation and may be processed repeatedly thereafter. In this paper, we provide a detailed study of Java object lifetimes which r...

متن کامل

Meaningful Type Names as a Basis for Object Lifetime Prediction

Object lifetime prediction can identify short-lived and longlived objects at or before their heap-allocation point. This prediction is an increasingly important technique to enable optimization of runtime decisions for high-performance garbage collection. This paper shows that extracting information from object type names can give a reliable and efficient way to make such object lifetime predic...

متن کامل

Development of Lifetime Prediction Model of Lithium-Ion Battery Based on Minimizing Prediction Errors of Cycling and Operational Time Degradation Using Genetic Algorithm

Accurate lifetime prediction of lithium-ion batteries is a great challenge for the researchers and engineers involved in battery applications in electric vehicles and satellites.  In this study, a semi-empirical model is introduced to predict the capacity loss of lithium-ion batteries as a function of charge and discharge cycles, operational time, and temperature. The model parameters are obtai...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2003